package br.com.sixsoftware.helpdesk.exception;

import br.gov.frameworkdemoiselle.exception.ApplicationException;

@ApplicationException
public class NegocioException extends Exception {

	private static final long serialVersionUID = 1L;

	/**
	 * Construtor.
	 * 
	 * @param throwable
	 *            Excecao.
	 */
	public NegocioException(Throwable throwable) {
		super(throwable);
	}

	/**
	 * Construtor.
	 * 
	 * @param msg
	 *            Mensagem do Erro de Negocio.
	 */
	public NegocioException(String msg) {
		super(msg);
	}

	/**
	 * Construtor.
	 * 
	 * @param message
	 *            Mensagem associada.
	 * @param throwable
	 *            Excecao raiz.
	 */
	public NegocioException(String message, Throwable throwable) {
		super(message, throwable);
	}

	/**
	 * Retorna o erro da exceção.
	 * 
	 * @return Mensagem formatada.
	 */
	@Override
	public String toString() {
		StringBuilder sb = new StringBuilder();
		if (getMessage() != null) {
			sb.append(getMessage());
		}
		return sb.toString();
	}

}
